/*比赛*/
EMui.vmMatches=(function(){
    var views={};



    //赛事进程
    views.fixtures=[
        new LeafView({
            id:"#matchesFixtures",
            state:{isShow:true},
            param:{
                url:EMui.urls.domain+EMui.urls.matchFixtures,
                data:{ _start:0, _limit:50 }
            },
            isLoadMore:false,
            dataFilter:function(data){

                 //添加日期分组属性 GroupDate 依赖此属性进行分组；
                $.each(data,function(index,item){
                    item.GroupDate= $.trim(moment(item.Date).format('YYYY-MM-DD'));
                });

                //按GroupDate分组数据
                var dates = [];
                for (var i = 0; i < data.length; i++) {
                    if (dates.indexOf(data[i].GroupDate) === -1) {
                        dates.push(data[i].GroupDate);
                    }
                }

                //生成新的数据
                var newData=[];
                for (var j = 0; j < dates.length; j++) {
                    var curDate= {Date:dates[j],arr:[]};
                    $.each(data,function(index,item){
                       if($.trim(moment(item.Date).format('YYYY-MM-DD'))===curDate.Date){
                           var diff=moment().diff(moment(item.Date));
                           if(diff<=0){
                               item.Live=false;
                           }else{
                               item.Live=true;
                           }
                           curDate.arr.push(item);
                       }
                    });
                    newData.push(curDate);
                }
                return newData
            }
        })
    ];

    //赛事结果
    views.results=[
        new LeafView({
            id:"#matchesResults",
            state:{isShow:false},
            param:{
                url:EMui.urls.domain+EMui.urls.matchResults,
                data:{ _start:0, _limit:5 }
            },
            dataFilter:function(data){
                //添加日期分组属性 GroupDate 依赖此属性进行分组；
                $.each(data,function(index,item){
                    item.GroupDate= $.trim(moment(item.Date).format('YYYY-MM-DD'));
                });

                //按GroupDate分组数据
                var dates = [];
                for (var i = 0; i < data.length; i++) {
                    if (dates.indexOf(data[i].GroupDate) === -1) {
                        dates.push(data[i].GroupDate);
                    }
                }

                //生成新的数据
                var newData=[];
                for (var j = 0; j < dates.length; j++) {
                    var curDate= {Date:dates[j],arr:[]};
                    $.each(data,function(index,item){
                        if($.trim(moment(item.Date).format('YYYY-MM-DD'))===curDate.Date){
                            var diff=moment().diff(moment(item.Date));
                            if(diff<=0){
                                item.Live=false;
                            }else{
                                item.Live=true;
                            }
                            curDate.arr.push(item);
                        }
                    });
                    newData.push(curDate);
                }
                return newData
            }
        })
    ];


    //切换标签
    var tab=$("#matchType"),lis=$("li",tab),viewName,curView=null;
    lis.on("changetab",function(){
        viewName=$(this).data("view");
        curView=views[viewName];

        for(var arr in views){
            if(curView==views[arr]){
                $.each(views[arr],function(n,view){
                    view.state.isShow=true;
                    if(view.vm.list.length<=0){
                        view.fillData();
                    }
                });
            }else{
                $.each(views[arr],function(n,view){
                    view.state.isShow=false;
                });
            }

        }




    });



    return{
        init:function(){
            for(var arr in views){
                $.each(views[arr],function(n,view){
                    if(view.state.isShow){
                        view.fillData();
                    }
                });
            }
        },

        reloadData:function(){
            for(var arr in views){
                $.each(views[arr],function(n,view){
                    view.param.data={_start:view.oldParamPage._start,_limit:view.oldParamPage._limit};
                    view.state.isNoneData=false;
                    view.vm.list=[];
                    if(view.state.isShow){
                        if(view.isLoadMore){view.offLoadMore();}
                        view.fillData();
                    }
                });
            }
        }
    }
})();



